#ifndef  _SIMULACION_H_
#define _SIMULACION_H_
#include <iostream>
#include <string>
#include "Campo.h"
#include	"Conexion.h"
#include "HiloSimulador.h"

class Simulacion{

  private:
	Campo campo;
    Conexion conexion;
	HiloSimulador *hs;
    bool *hayCambios;
    int hiloCreado;
    Mutex *mutex;
  
  public:
	 Simulacion(bool *cambios,Mutex *m);
    ~Simulacion();
	 int  conectar(std::string ip , int puerto);
     void cargarCampo(std::string nombre,int m[ANCHO][LARGO]);
    
    void devolverValoresCrecimiento(int m[ANCHO][LARGO]); 
	void devolverValoresDegradacion(int d[ANCHO][LARGO]); 
   
	 void iniciar();
    void reiniciar();
	 void detener();
     void subirVelocidad();
     void bajarVelocidad();
};

#endif
